DISSERTATION THESIS Heuristic Ray Shooting Algorithms
نویسنده
چکیده
Global illumination research aiming at the photo-realistic image synthesis pushes forward research in computer graphics as a whole. The computation of visually plausible images is time-consuming and far from being realtime at present. A significant part of computation in global illumination algorithms involves repetitive computing of visibility queries. In the thesis, we describe our results in ray shooting, which is a well-known problem in the field of visibility. The problem is difficult in spite of its simple definition: For a given oriented half-line and a set of objects, find out the first object intersected by the half-line if such an object exists. A naı̈ve algorithm has the time complexity N , where N is the number of objects. The naı̈ve algorithm is practically inapplicable in global illumination applications for a scene with a high number of objects, due its huge time requirements. In this thesis we deal with heuristic ray shooting algorithms that use additional spatial data structures. We put stress on average-case complexity and we particularly investigate the ray shooting algorithms based on spatial hierarchies. In the thesis we deal with two major topics. In the first part of the thesis, we introduce a ray shooting computation model and performance model. Based on these two models we develop a methodology for comparing various ray shooting algorithms for a set of experiments performed on a set of scenes. Consecutively, we compare common heuristic ray shooting algorithms based on BSP trees, kd-trees, octrees, bounding volume hierarchies, uniform grids, and three types of hierarchical grids using a set of 30 scenes from Standard Procedural Database. We show that for this set of scenes the ray shooting algorithms based on the kd-tree is the winning candidate among all tested ray shooting algorithms. The second and major part of the thesis presents several techniques for decreasing the time and space complexity for ray shooting algorithms based on kd-tree. We deal with both kd-tree construction and ray traversal algorithms. In the context of kd-tree construction, we present new methods for adaptive construction of the kd-tree using empty spatial regions in the scene, termination criteria, general cost model for the kd-tree, and modified surface area heuristics for a restricted set of rays. Further, we describe a new version of the recursive ray traversal algorithm. In context of the recursive ray traversal algorithm based on the kd-tree, we develop the concept of the largest common traversal sequence. This reduces the number of hierarchical traversal steps in the kd-tree for certain ray sets. We also describe one technique closely related to computer architecture, namely mapping kd-tree nodes to memory to increase the cache hit ratio for processors with a large cache line. Most of the techniques proposed in the thesis can be used in combination. In practice, the average time complexity of the ray shooting algorithms based on the kd-tree, as presented in this thesis, is about logN , where the hidden multiplicative factor depends on the input data. However, at present it is not known to have been proved theoretically for scenes with general distribution of objects. For these reasons our findings are supported by a set of experiments for the above-mentioned set of 30 scenes.
منابع مشابه
Efficient Sorting and Searching in Rendering Algorithms
In the proposed tutorial we would like to highlight the connection between rendering algorithms and sorting and searching as classical problems studied in computer science. We will provide both theoretical and empirical evidence that for many rendering techniques most time is spent by sorting and searching. In particular we will discuss problems and solutions for visibility computation, density...
متن کاملOn comparing ray shooting algorithms
In this paper we discuss a methodology for comparing various ray shooting algorithms through a set of experiments performed on a set of scenes. We develop a computational model for ray shooting algorithms, which allows us to map any particular ray shooting algorithm to the computational model. Further, we develop a performance model for ray shooting algorithms, which establishes the corresponde...
متن کاملHeuristic Search with Limited Memory By
HEURISTIC SEARCH WITH LIMITED MEMORY by Matthew Hatem University of New Hampshire, May, 2014 Heuristic search algorithms are commonly used for solving problems in artificial intelligence. Unfortunately, the memory requirement of A*, the most widely used heuristic search algorithm, is often proportional to its running time, making it impractical for large problems. Several techniques exist for s...
متن کاملStructure and Characteristics of Postgraduate Dissertations of Isfahan University of Medical Sciences (1989-1999)
Introduction. Dissertation is one of the important and valuable information resources especially in libraries. In fact, dissertation reflects the accepted university pattern for research presentation. Evaluation of dissertation subjects during a special period presents the university research strategy. This study was performed to determine the structure and charachteristics of postgraduate diss...
متن کاملOn Improving Kd Tree for Ray Shooting
Efficient ray shooting algorithm is inherently required by many computer graphics algorithms, particularly in image synthesis. Practical ray shooting algorithms aiming at the average-case complexity use some underlying spatial data structure such as kd-tree. We show the new termination criteria algorithm that improves the space and time complexity of the kd-tree construction. It provides effici...
متن کامل